Release 10.1A: OpenEdge Getting Started:
Progress OpenEdge Studio


SmartB2B and SonicMQ module

This module demonstrates the use of several new SmartObjects to link different businesses using a “Publish and Subscribe” technique. You might also do this using a “Point-to-Point” technique. A store can transmit its orders to its supplier as XML documents in a previously agreed upon format. The supplier can receive the XML document and translate the data into a form compatible with its own applications.

To launch this module:

  1. Choose the SmartB2B and SonicMQ button on the SportsPro main window. A window appears explaining the environment that you need to set up to run this module.
  2. Follow the instructions to launch the first application in this module. The Send Purchase Order dialog box appears:
  3. Follow the instructions to launch the second application in this module. The Order Fulfillment dialog box appears:

Each of the applications that make up this module contains a SmartBusinessObject (SBO) that organizes the data streams of several SDOs. A SmartB2BObject takes the data from the SBO and runs it through a mapping file generated by the OpenEdge XML Mapping Tool. The XML message is then sent out by a SmartProducer and transmitted using SonicMQ. The file is received at the other end by a SmartConsumer and passed to its SmartB2BObject to be decoded with another XML mapping file.

Table 2–10 describes the major objects used in the SmartB2B and SonicMQ module.

Table 2–10: Components of the SmartB2B and SonicMQ module
Object or filename
Object type
Function
gb2bintro.w
SmartDialog
Introduces the requirements for running this module. If you choose OK, wstore.w runs.
wstore.w
SmartWindow
Serves as a container for the other objects in the retailer’s application.
sbopo
SmartBusinessObject
Organizes the data streams of dcust, ditem, dpo, and dpoline into a single logical data stream.
dcust
SDO
Queries the Customer table to retrieve all customer records, and supplies them to sbopo.
ditem
SDO
Queries the Item table to retrieve all item records, and supplies them to sbopo.
dpo
SDO
Queries the PurchaseOrder table to retrieve all purchase order records, and supplies them to sbopo.
dpoline
SDO
Queries the POLine table to retrieve all purchase order line records, and supplies them to sbopo.
vpo
SDV
Displays fields from sbopo.
dynbrowser
SDB
Displays details of the line items in the record selected from sbopo.
pnavico
SmartPanel
(navigation)
Controls navigation within the result set from sbopo.
BUTTON–1
Button
Runs sendMessage( ) in sbbpo
sbbpo
SmartB2BObject
Using the predetermined schema, creates an XML message containing the data from the current record and passes it to dynproducer.
dynproducer
SmartProducer
Sends the XML message to the SonicMQ broker for delivery to the remote procedure.
wsupplier.w
SmartWindow
Serves as a container for the other objects in the supplier’s application.

Note: Since this module demonstrates how separate applications can exchange data, you have to start this application in a separate session.

dynconsumer
SmartConsumer
Receives the XML message from the SonicMQ broker and passes it to sbborder.
sbborder
SmartB2BObject
Reads the data from the XML message and uses the predetermined schema to transform the XML message into a record in sboord.
sboord
SmartBusinessObject
Organizes the data streams of dord and dordline into a single logical data stream.
dord
SDO
Queries the Order table to retrieve all order records, and supplies them to sboord.
dordline
SDO
Queries the OrderLine table to retrieve all order line records, and supplies them to sboord.
vord
SDV
Displays fields from sboord.
dynbrowser
SDB
Displays details of the line items in the record selected from sboord.
pnavico-2
SmartPanel
(navigation)
Controls navigation within the result set from sboord.

For more information on using SmartB2B objects and integrating OpenEdge applications with SonicMQ, see the chapter on SmartObjects in the OpenEdge Development: ADM and SmartObjects and the chapter on accessing SonicMQ messaging from the Progress 4GL in OpenEdge Development: Messaging and ESB .

The SportsPro sample application modules that you examined are useful starting points. In them, you can see how to make better use of OpenEdge’s capabilities in your applications. To see how to integrate separate modules into a functioning application, you can now look at the last part of the sample application, the Order Tracking System. The Order Tracking System integrates most of the modules you have just examined and several others into a finished application.


Copyright © 2005 Progress Software Corporation
www.progress.com
Voice: (781) 280-4000
Fax: (781) 280-4095